Precision machine vision inspection systems (or “vision systems” for short) can be utilized to obtain precise dimensional measurements of inspected objects and to inspect various other object characteristics. Such systems may include a computer, a camera and optical system, and a precision stage that is movable in multiple directions to allow workpiece inspection. One exemplary prior art system that can be characterized as a general-purpose “off-line” precision vision system is the commercially available QUICK VISION® series of PC-based vision systems and QVPAK® software available from Mitutoyo America Corporation (MAC), located in Aurora, Ill. The features and operation of the QUICK VISION® series of vision systems and the QVPAK® software are generally described, for example, in the QVPAK 3D CNC Vision Measuring Machine User's Guide, published January 2003, and the QVPAK 3D CNC Vision Measuring Machine Operation Guide, published September 1996, each of which is hereby incorporated by reference in their entirety. This type of system is able to use a microscope-type optical system and move the stage so as to provide inspection images of either small or relatively large workpieces at various magnifications.
General purpose precision machine vision inspection systems, such as the QUICK VISION™ system, are also generally programmable to provide automated video inspection. U.S. Pat. No. 6,542,180 (the '180 patent) teaches various aspects of such automated video inspection and is incorporated herein by reference in its entirety. As taught in the '180 patent, automated video inspection metrology instruments generally have a programming capability that allows an automatic inspection event sequence to be defined by the user for each particular workpiece configuration. This can be implemented by text-based programming, for example, or through a recording mode which progressively “learns” the inspection event sequence by storing a sequence of machine control instructions corresponding to a sequence of inspection operations performed by a user with the aid of a graphical user interface, or through a combination of both methods. Such a recording mode is often referred to as “learn mode,” “training mode,” or “record mode.” Once the inspection event sequence is defined in “learn mode,” such a sequence can then be used to automatically acquire (and additionally analyze or inspect) images of a workpiece during “run mode.”
The machine control instructions including the specific inspection event sequence (i.e., how to acquire each image and how to analyze/inspect each acquired image) are generally stored as a “part program” or “workpiece program” that is specific to the particular workpiece configuration. For example, a part program defines how to acquire each image, such as how to position the camera relative to the workpiece, at what lighting level, at what magnification level, etc. Further, the part program defines how to analyze/inspect an acquired image, for example, by using one or more video tools such as edge/boundary detection video tools.
Video tools (or “tools” for short) and other graphical user interface features may be used manually to accomplish manual inspection and/or machine control operations (in “manual mode”). Their set-up parameters and operation can also be recorded during learn mode in order to create automatic inspection programs or “part programs.” Video tools may include, for example, edge/boundary detection tools, autofocus tools, shape or pattern matching tools, dimension measuring tools, and the like. It is generally desirable that complex hardware and software operations and/or analysis are performed automatically (e.g., without requiring user observation and/or intervention) in association with various video tools and/or selectable operating modes. In that case, relatively unskilled users may easily and “transparently” implement such complex operations and/or analysis to achieve better measurement accuracy and/or reliability.
Accuracies in the micron or sub-micron range are often desired in such systems. This is particularly challenging with regard to Z-height measurements. Z-height measurements (along the optical axis of the camera system) are generally derived from a “best focus” position, such as that determined by an autofocus tool. Determining a best focus position is a relatively complex process that generally depends on combining and/or comparing information derived from multiple images. Thus, the level of precision and reliability achieved for Z-height measurements is often less than that achieved for the X and Y measurement axes, where measurements are typically based on feature relationships within a single image. Recently, known techniques generally referred to as “structured illumination microscopy” (SIM) methods are being incorporated in microscopic measurement and inspection systems, in order to increase their measurement resolution and/or accuracy beyond the optical limits normally associated with simple imaging (e.g., to the micron and submicron level.)
Briefly, many SIM methods include projecting a pattern of light stripes onto a workpiece in a first image, and then shifting that pattern on the workpiece transversely to the stripes in a second image, and so on for a third image, or more. The resulting images may be analyzed according to known methods to improve the surface measurement resolution, as described in greater detail below. Such techniques may enhance X, Y, and/or Z measurements. However, the systems and methods used in known structured illumination pattern (SIP) generating subsystems (e.g., for forming and shifting the patterns) have so far limited the economy, versatility, and/or resolution and accuracy improvements of practical SIM systems in undesirable ways. In some methods of analysis, it is desirable for the stripes to exhibit a sinusoidal intensity profile across the stripes. The article “Autoexposure for Three-Dimensional Shape Measurement Using a Digital-Light-Processing Projector,” by Ekstrand and Zhang in Optical Engineering 50(12), 123603 (December 2011), which is hereby incorporated herein in its entirety as a reference indicative of the state of the art, states:                Development of a method that can automatically adjust image exposure is vital for high-precision three-D shape measurement. Adjusting the projected fringe pattern intensity is one of the options . . . . However, the fringe pattern is typically restricted to eight bits (256 gray-scale values). Moreover, changing the maximum grayscale value usually affects the signal to noise ratio (SNR) of the measurement because the fringe contrast changes . . . . Therefore, it seems that adjusting the camera exposure time is the best option. However, for conventional sinusoidal fringe patterns displayed on a digital-light-processing “DLP” projector, the camera exposure time cannot be arbitrarily chosen because the projector relies on time modulation for the generation of grayscale values between zero and 255 . . . . . The smallest step to adjust the camera exposure time is its channel projection time (e.g., 8.33 ms for a 120-Hz projector). This step size is typically 1 to 2 orders of magnitude larger than the step size needed for practical exposure adjustment.        
Some have solved this problem by using a prefabricated grayscale projection mask that effectively includes more than 8 bit resolution. The image exposure can be controlled by the exposure time Ekstrand and Zhang propose a solution to this problem that includes a projector defocusing technique. Their technique may use non-sinusoidal structured patterns (e.g., including binary patterns). The sinusoidal stripe patterns are realized by properly defocusing the projector. Because this defocusing technique alleviates the grayscale generation demands on the DLP, an “arbitrary” exposure time can be used with the DLP in order to achieve a desired image exposure.
While the foregoing solutions allow projecting a sinusoidal stripe pattern with a versatile exposure time, they have undesirable characteristics. For example, a “fixed” mask lacks versatility and requires an expensive and bulky mechanical translation system in order to provide the desired shifts of the pattern position on the workpiece. The defocusing technique of Ekstrand and Zhang may require additional and/or adjustable optical elements to provide the defocus, and/or may limit versatility in terms of minimum “defocused” stripe spacing, and/or may cause undesirable and/or unpredictable interactions with the focus variations used for Z height “points from focus” techniques used in some precision machine vision inspection systems. Thus, an improved method for economically generating a structured illumination pattern (SIP) that includes good grayscale resolution at a wide variety of exposure levels would be desirable.